package com.agriculture.competition.mapper;

import com.agriculture.competition.domain.JaCompetitionManage;
import com.agriculture.competition.domain.vo.JaCompetitionManageVo;
import com.agriculture.system.api.domain.SysUser;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 比赛管理Mapper接口
 *
 * @author agriculture
 * @date 2024-11-12
 */
public interface JaCompetitionManageMapper {

    /**
     * 查询比赛管理
     *
     * @param id 比赛管理主键
     * @return 比赛管理
     */
    public JaCompetitionManage selectJaCompetitionManageById(Long id);

    /**
     * 查询比赛管理列表
     *
     * @param jaCompetitionManage 比赛管理
     * @return 比赛管理集合
     */
    public List<JaCompetitionManageVo> selectJaCompetitionManageList(JaCompetitionManageVo jaCompetitionManage);

    public List<JaCompetitionManageVo> selectJaCompetitionManageList1(JaCompetitionManageVo jaCompetitionManage);

    public List<JaCompetitionManage> queryAllCompetition();
    /**
     * 新增比赛管理
     *
     * @param jaCompetitionManage 比赛管理
     * @return 结果
     */
    public int insertJaCompetitionManage(JaCompetitionManage jaCompetitionManage);

    /**
     * 修改比赛管理
     *
     * @param jaCompetitionManage 比赛管理
     * @return 结果
     */
    public int updateJaCompetitionManage(JaCompetitionManage jaCompetitionManage);

    /**
     * 删除比赛管理
     *
     * @param id 比赛管理主键
     * @return 结果
     */
    public int deleteJaCompetitionManageById(Long id);

    /**
     * 批量删除比赛管理
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteJaCompetitionManageByIds(Long[] ids);

    /**
     * 新增修改比赛时获取老师列表
     *
     * @param roles
     * @return
     */
    List<SysUser> queryTeacherList(@Param("roles") List<String> roles);

    List<SysUser> queryAllList(Map<String, Object> map);


    JaCompetitionManage checkCompetitionTime(Long id);
}
